<template>
	<view>
		<cu-custom :bgColor="bgColor">
			<block slot="content">{{ pageTitle }}</block>
		</cu-custom>
		<u-loading-page :loading="true" loading-text="loading..." v-if="showLoading"></u-loading-page>
		<view v-show="!showLoading">
			<view class="viewbox"></view>
			<!-- 这里面写页面内容 -->

		</view>
		<!-- tabbar 在最底部(有些页面不需要tabbar)，可以注释掉) -->
		<u-tabbar :value="tabbar_index" :fixed="true" :border="false" :placeholder="true" :safeAreaInsetBottom="true"
			activeColor="#E71102" inactiveColor="#666666" zIndex='99' @change="tabbar_change">
			<u-tabbar-item v-for="(item, index) in tabbarItems" :key="index" :text="item.text"
				:icon="tabbar_index == index ? item.activeIcon : item.icon"></u-tabbar-item>
		</u-tabbar>
	</view>
</template>

<script>
	import {
		APP_CONFIG
	} from '@/config/app.config.js';

	import request from '@/common/request.js';
	import { goPage } from '@/common/oyyl-js/util';  // 跳转页面方法goPage(url, isAuth),isAuth:1需要登录,0不需要登录,默认为0
	export default {
		data() {
			return {
				showLoading: true,
				tabbar_index: 3, // 当前选中的tabbar 0:首页，1:订单，2:购物车，3:我的
				uid: 0, // 用户id
				activeRequests: 0, // 当前页面的请求个数
				tabbarItems: APP_CONFIG.tabbarItems, // tabbar配置
				projectName: APP_CONFIG.projectName, // 项目名称
				pageTitle: '个人中心', // 当前页面标题 <!--需要修改-->
				bgColor: 'bg-gradual-fff', //顶部背景色
			};
		},
		onShow() {
			this.uid = uni.getStorageSync('uid');
		},
		mounted() {
			// 请求商品数据
			this.fetchGoodsList();
		},
		methods: {
			showLoadingIndicator() {
				if (this.activeRequests === 0) {
					this.showLoading = true;
				}
				this.activeRequests++;
			},
			hideLoadingIndicator() {
				this.activeRequests--;
				if (this.activeRequests <= 0) {
					this.showLoading = false;
					this.activeRequests = 0;
				}
			},
			tabbar_change(e) {
				const url = this.tabbarItems[e].url;
				uni.reLaunch({
					url
				});
			},
			//下面写其他方法
			// 示例：请求商品数据
			fetchGoodsList() {
				 this.showLoadingIndicator(); // 显示loading 每个请求都要调用
				// 请求参数
				const paramsList = {}
				// 请求配置
				let optsList = {
					url: 'g-goodslist',
					method: 'get'
				};
				let _this = this;
				// 如果是需要登录才能访问的接口，使用request.httpTokenRequest
				request.httpRequest(optsList, paramsList).then(res => {
					if (res.data.code == 200) {
						// 请求成功
						const data = res.data.data;
						console.log(data);
					}
				}).catch(e => {
					// 请求失败
					console.log(e);
				}).finally(() => {
					_this.hideLoadingIndicator(); // 隐藏loading 每个请求都要调用
				});
			},
		},

		onShareAppMessage(res) { //分享给朋友
			return {
				title: this.projectName,
				path: this.tabbarItems[0].url,
			};
		},
		onShareTimeline(res) { //分享到朋友圈
			return {
				title: this.projectName,
				path: this.tabbarItems[0].url,
			};
		}

	};
</script>